package java学习.实训.day01;

import java.util.Random;
import java.util.Scanner;

import static java.lang.Math.pow;

/**
 * **************
 * 项目名称: 蓝桥杯 <br/>
 * 文件名称:  <br/>
 * 文件描述: 这里添加您的类文件描述，说明当前文件要包含的功能。 <br/>
 * 文件创建：刘世锦 <br/>
 * 创建时间: 2022/6/7 <br/>
 *
 * @version v1.0 <br/>
 * @update [序号][日期YYYY-MM-DD][更改人姓名][变更描述]<br/>
 * *************
 */
/*
1.需求：输入3个数，分别用变量a,b,c接收。如果a > b，输出"a > b"，如果a > c，输出“a > c”。
2.需求：有一个变量num，初始值是23。输入一个整数，如果输入的数字大于23，将num改为输入的数。
 */
public class day01 {
    public static void main1(String[] args) {
         Scanner sc = new Scanner(System.in);
           System.out.println("输入3个数，分别用变量a,b,c:");
        int a = sc.nextInt();
        int b = sc.nextInt();
        int c = sc.nextInt();
        if (a>b){
            System.out.println("a>b");
        }
        if (a>c){
            System.out.println("a>c");
        }
        System.out.println("请输入一个数");
        int num = 23;
        int m = sc.nextInt();
        if (m>23){
            num = m;
            System.out.println("sum 被改为m："+m);
        }else {
            System.out.println("num  的值仍为23");
        }
    }

    /*
    1.需求：输入一个整数，判断输入的数是不是偶数，如果是偶数，输出"您输入的是一个偶数"，如果不是偶数，输出"您输入的是一个奇数"。

2.需求：输入一个代表年份的数字，判断是不是闰年。（闰年的判断条件是：能被400整除，
或者能被4整除且不能被100整除）。如果是闰年，输处"xxx年是闰年！"，如果不是闰年，输出"xxx年是平年！"。
     */
    public static void main2(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("输入1个数 :");
        int a = sc.nextInt();
        if (a%2==0){
            System.out.println("偶数");
        }else {
            System.out.println("奇数");
        }
        System.out.println("输入一个代表年份的数字");
        int year = sc.nextInt();
        if (year%400==0 ||( year%4==0 && year%100!=0)){
            System.out.println("闰年");
        }else {
            System.out.println("平年");
        }
    }

    /*
    1.需求：根据考试成绩计算应该给与什么奖励：考试100分，奖励一架航拍遥控飞机；考
    试90分~99分，奖励游乐场玩一次；
    考试80分~89分，奖励玩具赛车一辆；
    考试70分~79分，奖励玩手机30分钟；
    考试70分以下，挨揍一顿。
        2.出租车计费标准为：3公里以内10元，3公里以后每1公里加2元，超过15公里，每1公里加3元。
        请输入一个最终公里数，计算应付的车费。
     */
    public static void main3(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("输入考试成绩 :");
        int a = sc.nextInt();
        if (a == 100){
            System.out.println("一架航拍遥控飞机");
        }else if (a >=90 && a<=99){
            System.out.println("游乐场玩一次");
        } else if (a >=80 && a<=89){
            System.out.println("玩具赛车一辆");
        }
        else if (a >=70 && a<=79){
            System.out.println("玩手机30分钟");
        }
        else if (a <70){
            System.out.println("挨揍一顿");
        }
        System.out.println("输入最终公里数 :");
        int l = sc.nextInt();
        int sum = 10;
        if (l< 3){
            sum = 10;
        }else if ( l>=3 && l< 15){
            sum=10+(l-3)*2;
            System.out.println();
        }else if(l>=15){
            sum = 34+(l-15)*3;
        }
        System.out.println(sum);
    }

    /*
     * 1.需求：在控制台打印出所有的水仙花数。水仙花数：是一个三位数，水仙花数的个位、十位、百位数字的立方之和等于原数。
     * 2.需求：数7游戏。从1到100（不含100），如果数是7的倍数或者包含7输出“过”，否则输出数字本身。
     */
    public static void main4(String[] args) {

        for (int i = 100; i < 1000; i++) {
            int a = i%10 ;
            int b = i/10%10;
            int c = i/100;
            if (a*a*a+b*b*b+c*c*c==i){
                pow(a,3);

                System.out.println(i);
            }

        }

        for (int i = 1; i <100 ; i++) {
            if (i%7==0||i%10==7||i/10 ==7){
                System.out.println("过");
            }else {
                System.out.println(i+" ");
            }
        }
    }

    public static void main5(String[] args) {
        /*
        1.需求：产生5个[10, 80]之间的随机数，输出产生的数，并求出最大的随机数。
        2.需求：随机产生5个[10, 80]之间的随机数，输出产生的数，并求出最小的数。
         */
        Random random = new Random();
        int max = 0;
        for (int i = 0; i < 5; i++) {
            int i1 = random.nextInt(80 - 10 + 1)+10;
            System.out.println(i1);
            if (max<i1){
                max = i1;
            }
        }
        System.out.println("max:"+max);
        int min = Integer.MAX_VALUE;
        for (int i = 0; i < 5; i++) {
            int i1 = random.nextInt(80 - 10 + 1)+10;
            System.out.println(i1);
            if (min>i1){
                min = i1;
            }
        }
        System.out.println("max:"+min);

    }

    public static void main6(String[] args) {
//        需求：输入一个整数，判断是几位数。
        Scanner sc = new Scanner(System.in);
        System.out.println("输入1个数 :");
        int a = sc.nextInt();
        int b = a;
//        int count = 0;
//        if (a==0){
//            count++;
//        }else{
//            while (a !=0){
//                a= a/10;
//                count++;
//            }
//        }
        int count = 1;
            while (a  / 10 !=0){
                a= a/10;
                count++;
            }

        System.out.println("数字"+b+"为"+count+"位数字");
    }
/*
    for (int i = 0; i < 5; i++) {
            for (int j = 1; j <=i+1; j++) {
                System.out.print(j+" ");
            }
            System.out.println();
        }
 */
    public static void main7(String[] args) {


        for (int i = 5; i >=1; i--) {
            for (int j = 1; j <=i ; j++) {
                System.out.print(j+" ");
            }
            System.out.println();
        }
        System.out.println("----------");


        for (int i = 1; i <=4; i++) {
            for (int k = 1; k <= 4-i+5; k++) {//控制空格的个数
                System.out.print("%");
            }
            for (int j = 1; j <= 2 * i - 1; j++) {//控制打印的图形
                System.out.print("@");
            }
            System.out.println();
        }
    }

    public static void main(String[] args) {
        /*
        需求：我国古代数学家张邱建在《算经》中出了一道“百钱买百鸡”的问题，
        题意是这样的：5文钱可以买一只公鸡，3文钱可以买一只母鸡，1文钱可以买3只小鸡。
        现在用100文钱买100只鸡，那么各有公鸡、母鸡、小鸡多少只？请编写程序实现。
         */

        for (int i = 0; i <= 20; i++) {
            for (int j = 0; j <=33; j++) {
                for (int k = 0; k <=100; k++) {
                    if (i*5+j*3+k/3==100 && k%3==0 && i+j+k==100){
                        System.out.println(i+" "+j+" "+k+" ");
                    }
                }
            }
        }
    }

}
